package com.ruoyi.warehouse.mapper;

import com.ruoyi.warehouse.entity.OrderRequest;
import org.apache.ibatis.annotations.*;

import java.util.List;

public interface OrderMapper {

    /**
     * 查询所有订单信息
     *
     * @return 订单列表信息
     */
    List<OrderRequest> selectOrderList();

    /**
     * 根据订单ID查询订单信息
     *
     * @param orderId 订单ID
     * @return 订单信息
     */
    OrderRequest selectOrderById(Long orderId);

    /**
     * 插入新的订单信息
     *
     * @param order 订单请求对象，包含要插入的订单信息
     * @return 插入结果
     */
    @Options(useGeneratedKeys = true, keyProperty = "orderId")
    int insertOrder(OrderRequest order);

    /**
     * 更新订单信息
     *
     * @param order 订单请求对象，包含要更新的订单信息
     * @return 更新结果
     */
    int updateOrder(OrderRequest order);

    /**
     * 根据订单ID数组删除订单信息
     *
     * @param orderIds 订单ID数组
     * @return 删除结果
     */
    int deleteOrderByIds(@Param("orderIds") Long[] orderIds);
}